namespace MEA.AE_BusinessLogic
{
	internal class IQAMap
	{
		private zuordnung[] zuordnungsliste = new zuordnung[32]
		{
			new zuordnung('A', 0),
			new zuordnung('B', 1),
			new zuordnung('C', 2),
			new zuordnung('D', 3),
			new zuordnung('E', 4),
			new zuordnung('F', 5),
			new zuordnung('G', 6),
			new zuordnung('H', 7),
			new zuordnung('I', 8),
			new zuordnung('K', 9),
			new zuordnung('L', 10),
			new zuordnung('M', 11),
			new zuordnung('N', 12),
			new zuordnung('O', 13),
			new zuordnung('P', 14),
			new zuordnung('R', 15),
			new zuordnung('S', 16),
			new zuordnung('T', 17),
			new zuordnung('U', 18),
			new zuordnung('V', 19),
			new zuordnung('W', 20),
			new zuordnung('X', 21),
			new zuordnung('Y', 22),
			new zuordnung('Z', 23),
			new zuordnung('1', 24),
			new zuordnung('2', 25),
			new zuordnung('3', 26),
			new zuordnung('4', 27),
			new zuordnung('5', 28),
			new zuordnung('6', 29),
			new zuordnung('7', 30),
			new zuordnung('8', 31)
		};

		public char findChar(int c)
		{
			return zuordnungsliste[c].from;
		}

		public int findVal(char c)
		{
			int result = -1;
			bool flag = true;
			for (int i = 0; i < zuordnungsliste.Length; i++)
			{
				if (!flag)
				{
					break;
				}
				if (c == zuordnungsliste[i].from)
				{
					result = zuordnungsliste[i].to;
					flag = false;
				}
			}
			return result;
		}

		public uint iqaStr2UInt(string iqastr)
		{
			uint num = 0u;
			for (int i = 0; i < 6; i++)
			{
				num <<= 5;
				uint num2 = (uint)findVal(iqastr[i]);
				num += num2 & 0x1F;
			}
			return num << 2;
		}
	}
}
